/////////////////////////////////////////////////////////////////////////
//
// Amuse Engine - graphics/scene
// Copyright (c) 2015.  All Rights Reserved
//
// File:		AERenderCollection.cpp
// Author:		Gianluca Belardelli
// Date:		08/04/2015
//
/////////////////////////////////////////////////////////////////////////
#include <AEEngine.h>

AERenderCollection::AERenderCollection( AEUINT32 uiSize, AEUINT32 uiMemGranularity ) : m_uiSize(uiSize), m_uiMemGranularity(uiMemGranularity), m_uiNumEntries(0), m_bAnyRemoved(AEFALSE), m_arrEntries( uiSize )
{
	m_arrEntries.Reserve( uiSize );
}

AERenderCollection::~AERenderCollection( void )
{
}

void AERenderCollection::AppendCollection( const AERenderCollection &other, AEUINT32 uiFirstIndex, AEINT32 nCount )
{
	m_arrEntries.Append( other.m_arrEntries );
	m_uiNumEntries = m_arrEntries.GetSize();
}

void AERenderCollection::AppendEntries( void **lppElements, AEINT32 nCount )
{
}

AEINT32 AERenderCollection::GetIndexOf( const void *lpElement ) const
{
	return m_arrEntries.IndexOf( (void *&)lpElement );
}

AEBOOL32 AERenderCollection::Remove( const void *lpElement )
{
	return AETRUE;
}

void AERenderCollection::RemoveAt( AEINT32 nIndex )
{
}

void AERenderCollection::Resize( AEUINT32 uiNewSize )
{
}

